#ifndef WACAMSOURCE_H
#define WACAMSOURCE_H

/********** Library Includes **************************************************/

#include <opencv/cv.h>

/********** Local Includes ****************************************************/

#include "imagesource.h"

/********** Classes ***********************************************************/

class WacawSource : public ImageSource {
public:
	WacawSource();
	explicit WacawSource(const std::string &filename);
	
	/**
	 * Returns the next image.
	 */
	virtual cv::Mat next();
	
	/**
	 * Returns the image last returned by next();
	 *
	 * TODO Add this to ImageSource
	 */
	virtual cv::Mat last();
	
	void setFilename(const std::string &filename);
	const std::string & filename() const;

private:
	std::string m_filename;
	cv::Mat m_last;
};

#endif